Mobile applications (i.e., applications configured to be executed by mobile phones, tablet computers, and other types of mobile computing devices) have become widespread and popular. However, screen sizes (i.e., pixel resolutions) and processing capabilities of mobile devices vary greatly, thereby making it difficult for mobile application developers to develop applications that have a consistent look and feel regardless of the particular mobile device being used to execute them.
For example, it is often desirable to animate transitions between different user interfaces that are displayed by a mobile application. To illustrate, it may be desirable to replace a user interface displayed within a display screen of a mobile device with a new user interface by having the new user interface “slide”0 into the display screen. This is typically accomplished by directing the mobile device to perform a series of animation steps in which the display screen is repeatedly redrawn or re-rendered. Each time the display screen is redrawn, an increasing number of pixels included in the display screen are occupied by the new user interface until the new user interface is completely displayed within the display screen.
Unfortunately, the actual number of pixels that are to be occupied by the new user interface after each animation step depends on the specific screen size of the display screen, which, as mentioned above, may vary from device to device. To remedy this problem, mobile application developers have traditionally had to hard-code the exact number of pixels to be occupied by the new user interface after each animation step is performed and/or the speed at which each animation step is to be performed for each of a multitude of different screen sizes. Not only is this cumbersome and difficult to perform, but it requires constant updates to the mobile application over time as new mobile devices having previously unaccounted for screen sizes are developed.